const express = require("express")
const fs = require("fs")
const path = require("path")
const { showData, addData, delData, updateData } = require("../../mode/fileHandle")
const router = express.Router()

const classFilePath = path.resolve("datas", "cdata.json")

// 班级列表
router.get("/", (req, res) => {
    showData(classFilePath, "class", res)
})

router.get("/add", (req, res) => {
    res.render("class-add")
})

router.post("/", (req, res) => {
    addData(classFilePath, req, res)
})

router.put("/", (req, res) => {
    updateData(classFilePath, req, res)
    // req.body
    // console.log(req.body);
    // let {id, className} = req.body
    // fs.readFile(path.resolve("datas", "cdata.json"), "utf-8", (err, data) => {
    //     if(err){
    //         return res.send({
    //             err: true,
    //             msg: "读取文件错误"
    //         })
    //     }
    //     if(data){
    //         let oldData = JSON.parse(data)
    //         // 修改对应的数据
    //         oldData.data[id].className = className
    //         // 写入文件
    //         fs.writeFile(path.resolve("datas", "cdata.json"), JSON.stringify(oldData), (err) => {
    //             if(err){
    //                 return res.send({
    //                     err: true,
    //                     msg: "写入文件错误"
    //                 })
    //             }
    //             res.send({
    //                 err: false,
    //                 msg: "修改班级成功"
    //             })
    //         })
    //     } else {
    //         return res.send({
    //             err: true,
    //             msg: "文件为空"
    //         })
    //     }
    // })
})

router.get("/edit", (req, res) => {
    // console.log(req.query);
    let id = req.query.id
    // 拿到要修改的数据的索引号，读取文件拿到数组，通过索引找到对应的数据，传递给模板
    let viewData = {
        data: {}
    }
    fs.readFile(path.resolve("datas", "cdata.json"), "utf-8", (err, data) => {
        if(err){
            res.render("class-edit", viewData)
        }
        if(data){
            // console.log(data); // 字符串
            // console.log(JSON.parse(data));
            // 通过索引拿到修改的值
            // console.log(JSON.parse(data).data[id]);
            viewData.data = JSON.parse(data).data[id]
            viewData.data.id = id
            console.log(viewData);
        }
        res.render("class-edit", viewData)
    })
    
})

router.delete("/", (req, res) => {
    delData(classFilePath, req, res)
})

module.exports = router